package com.lingchou.cloud.process.api.dto.constant;

/**
 * 变量
 */
public class FlowConstant {



    /**
     * 文件后缀
     */
    public static final String FILE_SUFFIX = ".bpmn";

    /**
     * 变量前缀
     */
    public static final String PARAM_PREFIX =  "P";

    /**
     * 名称前缀
     */
    public static final String NAME_PREFIX =  "N";

    /**
     * id前缀
     */
    public static final String ID_PREFIX =  "ID";

    /**
     * 与签 UserTask 多实例完成条件
     */
    public static final String WITH_SIGN_COMPLETION_CONDITION = "${nrOfCompletedInstances/nrOfInstances == 1}";

    /**
     * 或签 UserTask 多实例完成条件
     */
    public static final String OR_SIGN_COMPLETION_CONDITION = "${nrOfCompletedInstances == 1}";

    /**
     * 串签 UserTask 多实例完成条件
     */
    public static final String SINGLE_SIGN_COMPLETION_CONDITION = "${nrOfCompletedInstances == 1}";

    /**
     * 提交人的变量名称
     */
    public static final String FLOW_SUBMITTER_VAR = "initiator";
    /**
     * 提交人节点名称
     */
    public static final String FLOW_SUBMITTER = "提交人";
    /**
     * 自动跳过节点设置属性
     */
    public static final String FLOWABLE_SKIP_EXPRESSION_ENABLED = "_FLOWABLE_SKIP_EXPRESSION_ENABLED";
    /**
     * 挂起状态
     */
    public static final int SUSPENSION_STATE = 2;
    /**
     * 激活状态
     */
    public static final int ACTIVATE_STATE = 1;
    //后加签
    public static final String AFTER_ADDSIGN = "after";
    //前加签
    public static final String BEFORE_ADDSIGN = "before";

    /**
     * 撤回原因
     */
    public static final String REVOKE_REASON = "revoke";

    /**
     * 撤回状态描述
     */
    public static final String REVOKE_STR = "审批撤回";

    /**
     * 超时状态描述
     */
    public static final String TIME_OUT_STR = "审批超时";
}
